Сборка и публикация проекта на Yii2
Чтобы успешно собрать и опубликовать проект на Yii2 после коммита на GitHub и передачи его на FTP, следуйте этим шагам:
1. Подготовка проекта
Перед тем как отправить проект на FTP, убедитесь, что все изменения закоммичены и отправлены в репозиторий на GitHub. Для этого выполните следующие команды в терминале:
bash
git add .
git commit -m "Ваше сообщение о коммите"
git push origin main
2. Сборка проекта
Yii2 не требует специальной сборки, но вам нужно убедиться, что все зависимости установлены. Для этого выполните команду:
bash
composer install
Эта команда установит все необходимые зависимости, указанные в файле composer.json
.
3. Подготовка к публикации
Перед загрузкой на FTP выполните следующие действия:
- Настройка конфигурации: Убедитесь, что файл конфигурации
config/web.php
настроен для вашего продакшн-сервера. Проверьте параметры подключения к базе данных и другие настройки. - Очистка кэша: Если вы используете кэширование, очистите его перед публикацией:
bash
php yii cache/flush-all
4. Передача файлов на FTP
Используйте FTP-клиент (например, FileZilla) для передачи файлов на сервер. Вам нужно будет:
- Подключиться к вашему FTP-серверу, используя предоставленные хостингом данные (хост, логин, пароль).
- Перенести все файлы вашего проекта (включая папки
vendor
,web
,config
и другие) в корневую директорию вашего сайта на сервере.
5. Проверка работы сайта
После завершения загрузки файлов откройте ваш сайт в браузере и проверьте, что все работает корректно. Если возникли ошибки, проверьте логи приложения, которые обычно находятся в папке runtime/logs
.
А как это сделать автоматически на github.com
Автоматизация развертывания проекта Yii2 на FTP через GitHub
Чтобы автоматизировать процесс развертывания вашего проекта Yii2 на FTP после коммита на GitHub, вы можете использовать GitHub Actions. Это позволит вам автоматически загружать файлы на ваш FTP-сервер при каждом коммите. Вот как это сделать:
1. Создание файла конфигурации GitHub Actions
- В вашем репозитории на GitHub создайте папку
.github/workflows
, если она еще не существует. - Внутри этой папки создайте файл, например,
deploy.yml
.
2. Настройка файла deploy.yml
Вставьте следующий код в файл deploy.yml
. Этот код будет использовать FTP для загрузки файлов на ваш сервер:
yaml
name: Deploy to FTP
on:
push:
branches:
- main # Укажите вашу основную ветку
jobs:
deploy:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v2
- name: Install dependencies
run: composer install --no-dev --optimize-autoloader
- name: Deploy to FTP
uses: SamKirkland/FTP-Deploy-Action@4.1.0
with:
server: ${{ secrets.FTP_SERVER }}
username: ${{ secrets.FTP_USERNAME }}
password: ${{ secrets.FTP_PASSWORD }}
local-dir: ./ # Путь к локальной директории вашего проекта
server-dir: /path/to/your/server/directory # Путь на сервере
3. Настройка секретов репозитория
Чтобы защитить ваши данные для входа на FTP, добавьте их в секции секретов вашего репозитория:
- Перейдите в настройки вашего репозитория на GitHub.
- Найдите раздел Secrets and variables и выберите Actions.
- Добавьте следующие секреты:
FTP_SERVER
— адрес вашего FTP-сервера.FTP_USERNAME
— имя пользователя для FTP.FTP_PASSWORD
— пароль для FTP.
4. Проверка работы
Теперь, когда вы сделаете коммит в ветку main
, GitHub Actions автоматически запустит процесс развертывания, который установит зависимости и загрузит файлы на ваш FTP-сервер.
Заключение
Используя GitHub Actions, вы можете автоматизировать процесс развертывания вашего проекта Yii2 на FTP, что значительно упростит управление обновлениями и публикацией. Убедитесь, что все пути и настройки корректны, чтобы избежать ошибок при развертывании.